//var $path = "http://"+location.host + "/QARA";//项目根目录地址

/**
 * 填充左边表单的数据到搜索层(Mengfh)
 * @param leftFormId 左边表单的formId
 * @param searchCmDivId 搜索层的提交层Id
 */
function fillLeftFormMsg(leftFormId, searchCmDivId) {
	if(leftFormId && leftFormId !== "" && searchCmDivId && searchCmDivId !== "") {
		$(searchCmDivId).children().each(function(){
			var cmObjId = $(this).attr("id"); //需要提交元素的id
			//如果需要提交元素存在id才进行赋值设置
			if(cmObjId && cmObjId !== "") {
				var cmIndex = cmObjId.lastIndexOf("Cm"); //需要提交元素id的Cm后缀的下标
				//如果需要提交元素存在Cm后缀才进行赋值设置
				if(cmIndex != -1) {
					var srcId = cmObjId.substring(0, cmIndex); //需要提交元素的源id
					//将左边表单控件的值，赋值到搜索层里面的控件去
					var cmObj = $(searchCmDivId + " #" + cmObjId); //需要提交元素的对象
					var srcObj = $(leftFormId + " #" + srcId); //需要提交元素的源对象
					var tagName = cmObj.get(0).tagName.toLowerCase(); //需要提交元素的标签名称
					if(tagName === "input") {
						//input元素的情况
						var cmEleType = cmObj.attr("type");
						if(cmEleType === "text" || cmEleType === "hidden") {
							//文本框或者隐藏域的情况
							cmObj.val(srcObj.val());
						} else if(cmEleType === "radio" || cmEleType === "checkbox") {
							//单选框或者复选框的情况
							cmObj.prop("checked", srcObj.prop("checked"));
						}
					} else if(tagName === "textarea" || tagName === "select") {
						//textarea或者下拉框的情况
						cmObj.val(srcObj.val());
					}
				}
			}
		});
	}
}

$(function(){
	//根据选择的统计类型进行列表的动态变换(Mengfh)
	$(".sDiv .statType:checkbox").live("click", function(){
		var cbxObj = $(this); //当前操作的cbx对象
		var module = cbxObj.parent().attr("module"); //模块名称
		var fileName = cbxObj.parent().attr("fileName"); //json对象所在js的文件名
		//如果json对象变量名或json对象所在的js文件名不存在，直接跳出方法
		if(!module || module === "" || !fileName || fileName === "") {
			return false;
		}
		var url = $path + "/js/temp/" + fileName + "?rd=" + Math.random(); //需要重新加载的js路径
		var checkedUrl = "";
		var mixSelVal = "";
		//拼接所需统计类型的路径(统计类型复选框被选中的对象)
		cbxObj.parent().children(":checkbox:checked").each(function(){
			checkedUrl += "&statType=" + $(this).val();
			mixSelVal += $(this).val();
		});
		if(checkedUrl !== "") {
			var srcCmEles = [];
			var gridDiv = cbxObj.parents(".flexigrid");
			gridDiv.find(".cmEle").each(function(){
				srcCmEles.push($(this)); //先保存之前搜索层内的元素
			});
			url += checkedUrl + "&cookieSuffix=" + mixSelVal; //将统计类型路径拼接到需要重新加载的js路径
			//重新加载js，覆盖原来的json对象
			$.post(url, function($data){
				eval($data); //重新执行json对象的js代码
				var oldt = gridDiv.find("#" + module); //获取旧的flex的table元素
				var newt = oldt.clone(); //复制一个新的flex的table元素
				gridDiv.after(newt);
				newt.empty();
				newt.removeAttr("p");
				newt.removeAttr("grid");
				gridDiv.remove();
				newt.flexigrid(eval(module)); //重新加载json对象
				//还原搜索层之前保存的值
				if(srcCmEles.length > 0) {
					//获取新的flex的div
					var newGdiv = newt.parents(".flexigrid");
					newGdiv.find(".cmEle").each(function(index){
						var srcCmEle = srcCmEles[index]; //根据下标，获取之前保存的搜索层元素
						var tagName = this.tagName.toLowerCase(); //获取元素标题名称
						//获取之前保存的搜索层元素的禁用情况，延用至新的flex控件中
						$(this).prop("disabled", srcCmEle.prop("disabled"));
						if(tagName === "input") {
							//input元素的情况
							var eleType = $(this).attr("type");
							if(eleType === "text" || eleType === "hidden") {
								//文本框或者隐藏域的情况
								$(this).val(srcCmEle.val());
							} else if(eleType === "radio" || eleType === "checkbox") {
								//单选框或者复选框的情况
								$(this).prop("checked", srcCmEle.prop("checked"));
							}
						} else if(tagName === "textarea" || tagName === "select") {
							//textarea或者下拉框的情况
							$(this).val(srcCmEle.val());
						}
					});
				}
			});
		}
	});
});